System architecture for enabling distributed temporary control of discrete units of an asset

ABSTRACT

Described herein are various embodiments of methods and systems for distributing temporary control of an asset. For example, a method can include receiving an indication of an execution of a transfer of temporary control between a granting entity and a receiving entity of a unit of an asset comprising a plurality of units. Transaction data comprising a duration of the temporary control of the unit can be received and recorded in a distributed ledger of a blockchain network. Logic and rules corresponding to conditions of transfer of the temporary control of the unit of the asset can be identified. The method can include receiving a granting entity authentication key and determining that whether the transaction data meet the logic and the rules of the conditions of transfer.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority under 35 U.S.C. § 119(e)to U.S. Provisional Application No. 62/785,924, filed on Dec. 28, 2018,entitled “SYSTEM ARCHITECTURE FOR ENABLING DISTRIBUTED TEMPORARY CONTROLOF DISCRETE UNITS OF AN ASSET,” which is hereby incorporated byreference herein in its entirety.

BACKGROUND Field

The present disclosure relates to blockchain technology, and moreparticularly to distributed temporary control of discrete units of anasset.

Description of the Related Art

Computer and network functionality for the transfer of control of assetsis lacking, resulting in inefficiencies and functional limitations.Blockchain is a nascent technology for distributing individual featuresof a ledger to multiple entities. However, blockchain currently hasconsiderable technological restrictions in its application, such as inhow to release temporary control of an asset.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A schematically shows many advantages of various embodimentsdescribed herein.

FIG. 1B shows additional features of certain embodiments describedherein.

FIG. 2 shows example entities that may be involved in an exampleblockchain lease transaction.

FIG. 3 shows an example method that can, for example, be implemented ona computer, according to some embodiments.

FIG. 4 shows an example embodiment of tokenizing and leasing an asset,according to some embodiments.

FIG. 5 shows various inputs that may be included in a blockchain leaseof a token of an asset, according to some embodiments.

FIG. 6 shows an example database model of transactions and/or conditionswithin a lease for valuing the asset, according to some embodiments.

FIG. 7 is a block diagram that illustrates a computer system upon whichvarious embodiments may be implemented.

DETAILED DESCRIPTION

Some of the embodiments herein relate to the inefficiencies ofinformation transfer between a lessee and lessor. The idea is to utilizeblockchain technology to quickly, accurately, and cost-effectively allowa lease to be executed or a person to invest any amount of money fromalmost any electronic device such as a smartphone app even whileordering a coffee or other activity. Seamlessly, the transaction cantake place and comply with all securities laws.

One aspects of embodiments described herein is to modulate the realvalue of an asset in such a way that distribution (e.g., temporarycontrol) of an asset can be handled quickly, accurately, and moresimply. One unique feature of certain embodiments described herein isthe ability to break into electronic components the underlying asset.The asset can be an intellectual asset or a real asset (e.g., realestate, airplanes, cars, businesses, etc.).

While information is transferred on the blockchain, it is safe andsecure using its system of a decentralized ledger. However, thetechnology to offer secure temporary transactions (e.g., leases) whiledata and information is transferred from one blockchain to the next orbetween two individuals did not previously exist. As described herein,some embodiments provide the capability to securely, reliably,automatically, and/or instantaneously transfer, sign, and/or execute alease between one entity (e.g., a person, corporation, etc.) and anotherentity. The lessor may be a granting entity and the lessee may be areceiving entity. One or more additional entities may be involved. Forexample, one or more entities may be signors of a smart contract(described in more detail below) and/or may serve as intermediariesbetween the lessor and the lessee.

Using blockchain or other decentralized storage and ledger system, anasset (e.g., real, intellectual) may be broken into smaller units. Theunits may be referred to as tokens, securities, crypto-units, or someother term. When tokenized, each unit of the asset can quickly andsecurely be transferred, and the value of a single token or multipletokens can be translated directly into the value of a crypto currency.In some embodiments, two separate tokens may share value if they run onthe same blockchain, on separate blockchains, and/or with one on ablockchain and one off the blockchain. Thus, a tokenized asset may beconverted into a cryptocurrency that can be exchanged on an openmarketplace. In this way, tokens (e.g., asset units that areindividually leased, rented, owned, etc.) may be exchangeable in amarketplace and/or verified through a distributed ledger as describedherein using, for example, blockchain technology.

A blockchain (or sometimes “block chain”) is a distributed database thatmaintains a list of data records that improves security via thedistributed nature of the blockchain. A blockchain typically includesseveral nodes, which may be one or more systems, machines, computers,databases, data stores or the like operably connected with one another.In some cases, each of the nodes or multiple nodes are maintained bydifferent entities. A blockchain typically works without a centralrepository or single administrator. One well-known application of ablockchain is the public ledger of transactions for cryptocurrencies.The data records recorded in the blockchain are enforcedcryptographically and stored on the nodes of the blockchain.

A blockchain provides numerous advantages over traditional databases. Alarge number of nodes of a blockchain may reach a consensus regardingthe validity of a transaction contained on the transaction ledger. Theblockchain typically has two primary types of records. The first type isthe transaction type, which consists of the actual data stored in theblockchain. The second type is the block type, which are records thatconfirm when and in what sequence certain transactions became recordedas part of the blockchain. Transactions are created by participantsusing the blockchain in its normal course of business (e.g., whensomeone sends cryptocurrency or, as described herein, tokenized assetsto another person), and blocks are created by users known as “miners”who use specialized software/equipment to create blocks. The blockchainsystem may make known the number of miners in the current system and/orthe system can comprise primary sponsors that generate and create thenew blocks of the system. As such, any block may be worked on by aprimary sponsor. Users of the blockchain create transactions that arepassed around to various nodes of the blockchain. A “valid” transactionis one that can be validated based on a set of rules that are defined bythe particular system implementing the blockchain. For example, in thecase of cryptocurrencies, a valid transaction is one that is digitallysigned, spent from a valid digital wallet and, in some cases, that meetsother criteria. Similarly for tokens, a valid transaction may be onethat is digitally signed and/or transferred from a digital wallet orother digital storage.

A blockchain is typically decentralized—meaning that a distributedledger (e.g., a decentralized ledger) is maintained on multiple nodes ofthe blockchain. One node in the blockchain may have a complete orpartial copy of the entire ledger or set of transactions and/or blockson the blockchain. Transactions are initiated at a node of a blockchainand communicated to the various nodes of the blockchain. Any of thenodes can validate a transaction, add the transaction to its copy of theblockchain, and/or broadcast the transaction, its validation (in theform of a block) and/or other data to other nodes. This other data mayinclude time-stamping, such as is used in cryptocurrency blockchains. Insome embodiments, the nodes of the system might be financialinstitutions that function as gateways for other financial institutions.For example, a credit union (or other lender) might hold the account butprovide access to the distributed system through a sponsor node.

Various other specific-purpose implementations of blockchains can beincluded, such as distributed domain name management, decentralizedcrowd-funding, leasing and/or other leasing transactions,synchronous/asynchronous communication, decentralized real-time ridesharing and even a general purpose deployment of decentralizedapplications. In some embodiments, a blockchain may be characterized asa public blockchain, a consortium blockchain, or a private blockchain.In this regard, the public blockchain is a blockchain that anyone in theworld can read, anyone in the world can send transactions to and expectto see them included if they are valid, and anyone in the world canparticipate in the consensus process. The consensus process is a processfor determining which of the blocks get added to the chain and what thecurrent state of each block is. Typically, public blockchains aresecured by crypto economics—the combination of economic incentives andcryptographic verification using mechanisms such as proof of work,following a general principle that the degree to which someone can havean influence in the consensus process is proportional to the quantity ofeconomic resources that they can bring to bear. A public blockchain isgenerally considered to be fully decentralized.

In some embodiments, a consortium blockchain is a blockchain where theconsensus process is controlled by a pre-selected set of nodes; forexample, a blockchain may be associated with a number of memberinstitutions (e.g., 2, 10, 15, etc.), each of which operate in such away that the at least a certain number (e.g., 2, 5, 10, 25, etc.) ofmembers must sign every block in order for the block to be valid. Theright to read such a blockchain may be public, or restricted to theparticipants. These blockchains may be considered partiallydecentralized. In still other embodiments, fully private blockchains isa blockchain whereby permissions are kept centralized with one entity.The permissions may be public or restricted to an arbitrary extent.

In some embodiments, inefficiencies and technical problems associatedwith leases are solved. Traditional leases generally involve oftenrepetitive paperwork, lengthy credit checks, and time-consuming requestsand processes. By contrast, when assets (e.g., real assets) aretokenized, they can travel in the form of a token off the blockchaininto a cryptocurrency on another and/or the same blockchain. This allowsthe value of the real asset to be directly related to the value of atoken or vice versa. “Tokenization” generally refers to the process ofreplacing sensitive data with unique identifiers (e.g., identificationsymbols) that retain the required information about the data withoutcompromising its security. An issuer of a token can be an asset owner, abank, or another party responsible for the asset to be tokenized.

After “tokenizing” the asset the system can modulate the flow of tokensthrough the “lease agent” making the token instantly available to thewould-be “purchaser/lessor”. The ability to manage this process is oneof the technological advances unique to this process. The technology canallow a person to invest any amount of money from almost any electronicdevice such as a smartphone app even while ordering a coffee or otheractivity. The transaction can offer a smooth user experience whilemeeting security requirements for countries around the globe.

In certain embodiments, “smart contracts” may be used. Smart contractsmay be uniquely keyed to a token and can be used to manage tiers ofopportunity at the same time protecting investment. Smart contracts canbe arranged in such a way as to allow transparency never seen before,particularly in leasing transactions. Blockchains reduce the amount oftrust required from any single actor in the system. Due to the usage ofa decentralized consensus algorithm “trustless trust” can be achieved,resulting in a distributed database that is tamperproof. Trusted dataelements are distributed among disparate actors in the system, and viaan economic game having rules described below, the disparate actorscooperate according to the rules. This can be done via unique coding ofalgorithms locking in a security via identifier “tags” that may followeach purchaser for a specified time period or possibly forever. Certainembodiments may include an insurance mechanism to provide protection tothe user in the event of a hack, delay in transmission, and/or fraud.The protection can stem from the blockchain technology with one or morelevels of security verification. For example, each recipient of a leasecontract may hold a unique key that ensures their lease agreement holdstitle to the specific token that is tied to the underlying asset. Thus,the lessor and lessee can be better assured that there will not be anyerrors. This system of technology, process, and unbridled access willcategorically change the way many assets are financed while givingfinancial access to those who otherwise would not be given permission.This technological advancement is the first cryptocurrency backed byreal assets thereby creating an enormous economy of its own for thebenefit of people around the world.

The system may aggregate information associated with past transactionsexecuted two or more entities (e.g., a granting entity such as a lessor,a receiving entity such as an agent entity or a lessee). In doing so thesystem may be configured to create a blockchain of transactioninformation based on at least the aggregated information associated withthe transactions. Additionally or alternatively, the system may initiatea request to receive information associated with transaction activityexecuted by the entity with one or more nodes.

The system may be configured to transmit a request to the one or morenodes to validate the transaction activity based on at least logic andrules for the blockchain (e.g., elements of a leasing or rentingarrangement). In some embodiments, the validation step may be performedby the granting entity prior to adding the transaction information tothe blockchain based on the logic and rules from the granting entity'sdistributed ledger. The granting entity can post the validatedtransaction information record to the blockchain with an authenticationkey or signature that is recognized by other members of the blockchain.In some embodiments, the validation may also be performed by one or moreof the member financial institutions other than the granting entity. Forexample, in a blockchain certain institutions may be designated asvalidation institutions that in addition to being potential sourceand/or host institutions operate as validation institutions for allmembers of the blockchain. In such an arrangement, the transactioninformation record of the granting entity (e.g., the entity that ownsthe asset and/or a financial institution through which the transactionwas originally made with the entity) can be first sent by the grantingentity to the validating entity (e.g., a separate financial institutionand/or one or more nodes) and the request is validated using informationprovided with the request to the validation entity based on the logicand rules from the blockchain's distributed ledger. The validatedtransaction information record may then be posted to the blockchain bythe validation institution with a signature or authentication keyindicating that the transaction is validated. In other embodiments, thetransaction information record is first sent by the granting entity tothe validation institution, and the request is validated based oninformation provided with the transaction information record at thevalidation institution. The validation institution may transmit thesignature or authentication key to the granting entity, and the grantingentity may post the validated transaction information record to theblockchain. In some embodiments the validation institutions may comprisean entity that is not a member financial institution and that does notfunction as a host or granting entity. In such an embodiment thevalidation institution may not be permitted to access, maintain orcontrol any user transaction information records and only functions tovalidate the transaction information record. Once the transactioninformation record is validated the validation institutions may providean authentication key or signature to the granting entity that is usedby the granting entity to post the validated device record to theblockchain.

As described herein, the blockchain may be configured with a set ofrules to dictate when and how transactions are valid and other detailsabout how the network communicates data and the like (e.g., parties ofthe transaction, duration of the rental/lease agreement, terms of thearrangement, etc.). In some embodiments, the rules dictate that agranting entity must validate all transaction information records. Insome embodiments, the rules dictate that some or all transactioninformation records may be approved by one or more validationinstitutions. A validation institution may be one or more of thefinancial institutions on the blockchain that validate transactions forother financial institutions on the blockchain. In some such cases, therules dictate that the transaction information record created by agranting entity, also includes additional information that is useful indetermining whether requests associated with the transaction informationrecord should be approved. In other embodiments, the validationinstitution must reach out to the host institution in certain situationsas dictated by the rules. In some embodiments, more than one institutionmust validate a transaction before it may be posted to the blockchain asa validated transaction information record. In some implementations,blockchains are not suitable for storing large amounts of data, soadditional information can be stored in external (off-chain systems) andbeing validated via fingerprints/hashes that get stored inside ablockchain. For example, certain data, such as descriptive details ofthe asset itself or of the issuer of the token, may be stored outsidethe blockchain such that those details can be validated independently ofthe tokenized assets.

As noted above, certain embodiments may tokenize or divide intofractional pieces each asset such that each token or piece represents apiece of an asset. Assets may also be tokenized as one single token.These tokens can include information on the share of the asset theyrepresent, which can then be leased to others who are willing to holdthem (e.g., possess them, control them) without actually owning thetoken. In some embodiments, the tokens may automatically revert back tothe grantor after a specified time period (e.g., at the end of thelease). This may occur, for example, programmatically by the smartcontract holding the tokens implementing a rule that sends tokens to aparticular address as soon as a current date exceeds an end date of thelease. The holder can benefit from the token just as they would if theyentered into a lease agreement. A lease agent may serve as anintermediary between the token and the crypto currency and/or may bepart of a smart contract or similar logical conditioning used totransfer the asset from a token to a crypto currency. Thus, the leaseagent can act as the intermediary, leasing tokens from the owner and tothose who want the benefits of possession or control of the tokens. Thevalue of any token can be determined by inputs received on one end ofthe lease agent. This data entered is then transmitted through the leaseagent which then directly correlate value with the cryptocurrency orfiat currency on the other end. In certain embodiments, an entity cantokenize the units to create a commodity structure around the units. Forexample, the units of the asset or assets could serve as collateral fora security interest in a good or cash flow. The commodity structureenables users to categorize items, services, and supplier branchinformation in a hierarchical tree structure.

The units or tokens could include a provision (e.g., in a “smartcontract” or other logical condition) where the lender assumes temporarycontrol of the goods with a sale/buy back arrangement. Thus, a commoditystructure in conjunction with the tokens can be used as a financingsolution for a large asset or a group of assets.

In some embodiments, a lease-to-own capability can be provided. Forexample, at the end of the lease period, the token may remain in thepossession and/or control of the recipient while the title to thetokenized asset is also (e.g., automatically) transferred to therecipient to complete the ownership transaction. In some embodiments,one or more inputs related to lease-to-own provision may be collected inone set of logical conditions (e.g., in a smart contract). As noted,blockchain technology can allow for this transaction to be automaticallyand/or securely executed (e.g., transferred) among two or more parties.In some embodiments, the transaction can be executed on behalf of asingle party.

Specific reference will now be made to the Figures. FIG. 1Aschematically shows many advantages of the various embodiments describedherein. For example, it can provide a reduction in repetitive work,automatically update the value of the token, it can be used in place ofvirtually all types of traditional lease arrangements, it can be used toconvert real assets into a digital currency such as a crypto currency orfiat currency, the asset can be backed the digital currency and/ordigital token, and transactions can be more secure than traditionaldeals. Other advantages are shown, such as a reduction in wire fraudand/or the possible elimination of intermediate parties on an assettransaction.

In certain embodiments, a policy contract (e.g., life insurance policy)can be tokenized as described herein. The tokenized policy contract caninclude a plurality of units that can be distributed to one or moreowners for temporary control of the corresponding units. For example, alife insurance policy including the transfer of regular payments may betokenized, and each token may be temporarily distributed to differentlessees. Each token may include a smart contract that includes logic fortransferring a payment to the lessor as well as for receiving and/ordemanding a payment from a policy provider (e.g., insurance provider).The payment may correspond in size to a total payment of the policydivided by the total tokens associated with the policy contract. FIG. 1Bshows additional features of certain embodiments described herein.

FIG. 2 shows example entities that may be involved in an exampleblockchain lease transaction. As shown, a central agency or broker maybe used to receive funds for the smart contract, submit information inthe blockchain ledger to allow for distributed verification of the assettransaction, pass/receive tokens for crypto currency, distribute tokensand/or crypto currency to one or more fund managers, provide a valuationof the token and/or crypto currency, verify certain aspects of title (ifthis is not provided by the blockchain itself), and/or provide aninsurance for fraudulent transactions.

FIG. 3 shows an example method 300 that can, for example, be implementedon a computer, according to some embodiments. The method can enabledistributed control of discrete units of an asset based on a distributedblockchain network as described herein. At block 304, the method caninclude receiving an indication of an execution of a transfer oftemporary control between a granting entity and a receiving entity of aunit of an asset comprising a plurality of units. For example, receivingthe indication may be triggered by the corresponding blockchaintransaction being confirmed/mined. This may also be the technicaltrigger to update any type of GUI or sending out an email. In someimplementations, the indication may include a sensory signal, such as aflash or a sound. At block 308, the method may include receivingtransaction data comprising a duration of time of the control of theunit. The duration may include a specific time (e.g., 1 day, 1 month, 6months, 1 year, 5 years, 99 years, etc.) and/or a condition forconcluding the lease. A condition can include the fulfilment of acertain event (e.g., an accumulation of a certain number of tokenizedassets) or a failure of a triggering event (e.g., a failure to transferfunds by a particular date to a granting entity). Multiple conditionsand/or durations may be included. For example, the duration may includethe first condition or time period to be fulfilled. Other conditions arepossible. At the conclusion of the duration and/or conditions, the unitscan be returned or reverted back to the granting entity, perhaps at acost and/or value increase or reduction.

The method can include determining that the receiving entity hasinitiated the transaction. However, in certain embodiments, the methodmay include determining that the granting entity has initiated thetransaction. In certain embodiments, no such determination is made. Atblock 312, the method can include recording (e.g., based at least on thedetermination described above) the transaction data in a distributedledger of a blockchain network. The transaction data may be part of along list of data from various transactions that may have occurred priorto the present transaction. The method can identify a smart contractbetween the granting entity and at least the receiving entity. The smartcontract may be between the granting entity and a plurality of entities.The smart contract can include logic and rules corresponding toconditions for transfer of the control of the unit of the asset. Incertain embodiments, a smart contract is not employed but conditionallogic is used to ensure successful fulfillment of the logic and/or rulesassociated with the asset unit.

At block 316, the method can identify the logic and rules of the smartcontract and/or other conditions for transfer of control of the unit ofasset. At block 320, the method may include receiving a granting entityauthentication key. The granting entity authentication key can ensurethat the transaction is taking place with the permission of the grantingentity and on the permitted terms. A centralized entity or broker (e.g.,as described herein) may receive the granting entity authentication key.

At block 324, the method may determine that the transaction data meetthe logic and rules of the logic and rules of the conditions of transfer(e.g., of the smart contract) by at least, for example, comparing thetransaction data to the logic and rules of the smart contract and/ormatching (e.g., based on the comparison) a stored authentication key ofthe blockchain distributed network to the granting entity authenticationkey. Based on the determination that the transaction data meet the logicand rules of the smart contract, the method can validate the transactiondata. This validation may include verifying that the correct parties areinvolved in the transaction, that the correct terms are included for thetransaction, that the conditions of the transaction are met, and/or thatthe existence of the asset and payment are confirmed. Such verificationcan include implementing Know Your Customer (“KYC”) or Anti-MoneyLaundering (“AML”) algorithms. KYC can include verifying a user'sidentity or verifying other credentials involved in the transaction. AMLcan include preventing the ability of tokens to be used in financialcrimes.

At block 328, the method can send (e.g., based on the validation of thetransaction data) instructions for transferring temporary control of theunit of the asset to the receiving entity. Sending instructions fortransferring temporary control of the unit of the asset to the receivingentity can include sending instructions for transferring an exchangeasset from the receiving entity to the granting entity. Sending theinstructions for transferring temporary control of the unit of the assetcan include forming a new smart contract between the receiving entityand at least the granting entity. The new smart contract can includecorresponding new rules and new logic. The new logic may includeinstructions to transfer a payment asset (e.g., a tokenized moneypayment) and/or the unit of the asset to the granting entity based on apassage of a period of time. In some embodiments, the new instructionscan include instructions for transferring corresponding plurality ofpayment assets to the granting entity such that the transfer of each ofthe plurality of payment assets is to occur after passage of each of thecorresponding plurality of periods of time. The new logic can includeinstructions to transfer, based on a change in value of the unit of theasset, a payment asset to the receiving entity. The new logic caninclude instructions to transfer, based on a passage of the duration oftime, control of the unit of the asset to the granting entity. In someembodiments, the instructions may include transferring the control by acentralized broker described herein. Transferring control can require a“multi-sig-solution” where a plurality of entities would need to verifythe transaction (e.g., via a signature) before the transaction is valid(e.g., 2 out of 3 users in predefined roles). After validation, thesystem may require a change in entities that need to approve thetransaction, such as a new entity altogether (e.g., now 3 out of 4users).

FIG. 4 shows an example embodiment of tokenizing and leasing an asset,according to some embodiments. As shown, a lending organization (e.g., abank) may provide debt to a property owner in exchange for interest onthe debt. The property owner may transfer ownership and control of theproperty (e.g., real asset) to an equity holder in exchange for payment.A central broker entity may provide the equity holder a payment inexchange for a capital gain on the equity. The equity of the asset canbe turned into one or more tokens (e.g., as described herein) that canbe exchanged for payment. These one or more tokens can be leased (e.g.,using blockchain as described herein) for payment by an investor.

FIG. 5 shows various inputs that may be included in a blockchain leaseof a token of an asset, according to some embodiments. In someembodiments, these inputs may be included in the conditions of transfer(e.g., a smart contract) described herein. For example, inputs mayinclude the identity of one or more parties that are involved, subjectmatter of the lease, duration of the lease, consideration for the leasedtoken, and/or terms of a sub-lease of the token. As shown, one or moreof these terms may be verified by the blockchain ledger. For example, insome implementations these terms may be verified by the miners. Forexample, the rules and data within the smart contracts that are beingexecuted by the miners do the verification and rule checking. In someimplementations, the token smart contracts include additional data fieldto store rules concerning allowed parties and terms allowed, along with“standard” extensions for KYC/AML information that may be part of thetoken contracts as well.

FIG. 6 shows an example flowchart of transactions and/or conditionswithin a lease for valuing the asset, according to some embodiments. Adue diligence review of the data object (e.g., lease legaldocumentation) 172 can be performed. The database model may includevarious inputs, such as data about data object (e.g., involved parties)176, data object (e.g., data about lease subject) 178, data object(e.g., duration and consideration) 180, and/or data object (e.g.,sub-lease clause(s)) 182 for each token.

One or more elements of this data may be used to calculate valuecriteria in step 174 for valuing each tokenized asset. Various decisionvariables may be included such as decision variables for the lease 184,market value of comparable leases 186, a strategy 188 for tokenizing theasset, and various other inputs 190. A value is then calculated for eachtoken in step 192. Thereafter, the least documents may be printed 194 ifnecessary and any other appropriate reports.

Additional Implementation Details

Various embodiments of the present disclosure may be a system, a method,and/or a computer program product at any possible technical detail levelof integration. The computer program product may include a computerreadable storage medium (or mediums) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent disclosure.

For example, the functionality described herein may be performed assoftware instructions are executed by, and/or in response to softwareinstructions being executed by, one or more hardware processors and/orany other suitable computing devices. The software instructions and/orother executable code may be read from a computer readable storagemedium (or mediums).

The computer readable storage medium can be a tangible device that canretain and store data and/or instructions for use by an instructionexecution device. The computer readable storage medium may be, forexample, but is not limited to, an electronic storage device (includingany volatile and/or non-volatile electronic storage devices), a magneticstorage device, an optical storage device, an electromagnetic storagedevice, a semiconductor storage device, or any suitable combination ofthe foregoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a solid state drive, a random accessmemory (RAM), a read-only memory (ROM), an erasable programmableread-only memory (EPROM or Flash memory), a static random access memory(SRAM), a portable compact disc read-only memory (CD-ROM), a digitalversatile disk (DVD), a memory stick, a floppy disk, a mechanicallyencoded device such as punch-cards or raised structures in a groovehaving instructions recorded thereon, and any suitable combination ofthe foregoing. A computer readable storage medium, as used herein, isnot to be construed as being transitory signals per se, such as radiowaves or other freely propagating electromagnetic waves, electromagneticwaves propagating through a waveguide or other transmission media (e.g.,light pulses passing through a fiber-optic cable), or electrical signalstransmitted through a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions (as also referred to herein as,for example, “code,” “instructions,” “module,” “application,” “softwareapplication,” and/or the like) for carrying out operations of thepresent disclosure may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, oreither source code or object code written in any combination of one ormore programming languages, including an object oriented programminglanguage such as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. Computer readable program instructions may be callable fromother instructions or from itself, and/or may be invoked in response todetected events or interrupts. Computer readable program instructionsconfigured for execution on computing devices may be provided on acomputer readable storage medium, and/or as a digital download (and maybe originally stored in a compressed or installable format that requiresinstallation, decompression or decryption prior to execution) that maythen be stored on a computer readable storage medium. Such computerreadable program instructions may be stored, partially or fully, on amemory device (e.g., a computer readable storage medium) of theexecuting computing device, for execution by the computing device. Thecomputer readable program instructions may execute entirely on a user'scomputer (e.g., the executing computing device), partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through any type of network, includinga local area network (LAN) or a wide area network (WAN), or theconnection may be made to an external computer (for example, through theInternet using an Internet Service Provider). In some embodiments,electronic circuitry including, for example, programmable logiccircuitry, field-programmable gate arrays (FPGA), or programmable logicarrays (PLA) may execute the computer readable program instructions byutilizing state information of the computer readable programinstructions to personalize the electronic circuitry, in order toperform aspects of the present disclosure.

Aspects of the present disclosure are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of thedisclosure. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart(s) and/or block diagram(s)block or blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks. For example, the instructions may initially be carried on amagnetic disk or solid state drive of a remote computer. The remotecomputer may load the instructions and/or modules into its dynamicmemory and send the instructions over a telephone, cable, or opticalline using a modem. A modem local to a server computing system mayreceive the data on the telephone/cable/optical line and use a converterdevice including the appropriate circuitry to place the data on a bus.The bus may carry the data to a memory, from which a processor mayretrieve and execute the instructions. The instructions received by thememory may optionally be stored on a storage device (e.g., a solid statedrive) either before or after execution by the computer processor.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present disclosure. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the Figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. In addition, certain blocks may be omitted insome implementations. The methods and processes described herein arealso not limited to any particular sequence or time, and the blocks orstates relating thereto can be performed in other sequences that areappropriate.

It will also be noted that each block of the block diagrams and/orflowchart illustration, and combinations of blocks in the block diagramsand/or flowchart illustration, can be implemented by special purposehardware-based systems that perform the specified functions or acts orcarry out combinations of special purpose hardware and computerinstructions. For example, any of the processes, methods, algorithms,elements, blocks, applications, or other functionality (or portions offunctionality) described in the preceding sections may be embodied in,and/or fully or partially automated via, electronic hardware suchapplication-specific processors (e.g., application-specific integratedcircuits (ASICs)), programmable processors (e.g., field programmablegate arrays (FPGAs)), application-specific circuitry, and/or the like(any of which may also combine custom hard-wired logic, logic circuits,ASICs, FPGAs, etc. with custom programming/execution of softwareinstructions to accomplish the techniques).

Any of the above-mentioned processors, and/or devices incorporating anyof the above-mentioned processors, may be referred to herein as, forexample, “computers,” “computer devices,” “computing devices,” “hardwarecomputing devices,” “hardware processors,” “processing units,” and/orthe like. Computing devices of the above-embodiments may generally (butnot necessarily) be controlled and/or coordinated by operating systemsoftware, such as Mac OS, iOS, Android, Chrome OS, Windows OS (e.g.,Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10, WindowsServer, etc.), Windows CE, Unix, Linux, SunOS, Solaris, Blackberry OS,VxWorks, or other suitable operating systems. In other embodiments, thecomputing devices may be controlled by a proprietary operating system.Conventional operating systems control and schedule computer processesfor execution, perform memory management, provide file system,networking, I/O services, and provide a user interface functionality,such as a graphical user interface (“GUI”), among other things.

For example, FIG. 7 is a block diagram that illustrates a computersystem 700 upon which various embodiments may be implemented. Computersystem 700 includes a bus 702 or other communication mechanism forcommunicating information, and a hardware processor, or multipleprocessors, 704 coupled with bus 702 for processing information.Hardware processor(s) 704 may be, for example, one or more generalpurpose microprocessors.

Computer system 700 also includes a main memory 706, such as a randomaccess memory (RAM), cache and/or other dynamic storage devices, coupledto bus 702 for storing information and instructions to be executed byprocessor 704. Main memory 706 also may be used for storing temporaryvariables or other intermediate information during execution ofinstructions to be executed by processor 704. Such instructions, whenstored in storage media accessible to processor 704, render computersystem 700 into a special-purpose machine that is customized to performthe operations specified in the instructions.

Computer system 700 further includes a read only memory (ROM) 708 orother static storage device coupled to bus 702 for storing staticinformation and instructions for processor 704. A storage device 710,such as a magnetic disk, optical disk, or USB thumb drive (Flash drive),etc., is provided and coupled to bus 702 for storing information andinstructions.

Computer system 700 may be coupled via bus 702 to a display 712, such asa cathode ray tube (CRT) or LCD display (or touch screen), fordisplaying information to a computer user. An input device 714,including alphanumeric and other keys, is coupled to bus 702 forcommunicating information and command selections to processor 704.Another type of user input device is cursor control 716, such as amouse, a trackball, or cursor direction keys for communicating directioninformation and command selections to processor 704 and for controllingcursor movement on display 712. This input device typically has twodegrees of freedom in two axes, a first axis (e.g., x) and a second axis(e.g., y), that allows the device to specify positions in a plane. Insome embodiments, the same direction information and command selectionsas cursor control may be implemented via receiving touches on a touchscreen without a cursor.

Computing system 700 may include a user interface module to implement aGUI that may be stored in a mass storage device as computer executableprogram instructions that are executed by the computing device(s).Computer system 700 may further, as described below, implement thetechniques described herein using customized hard-wired logic, one ormore ASICs or FPGAs, firmware and/or program logic which in combinationwith the computer system causes or programs computer system 700 to be aspecial-purpose machine. According to one embodiment, the techniquesherein are performed by computer system 700 in response to processor(s)704 executing one or more sequences of one or more computer readableprogram instructions contained in main memory 706. Such instructions maybe read into main memory 706 from another storage medium, such asstorage device 710. Execution of the sequences of instructions containedin main memory 706 causes processor(s) 704 to perform the process stepsdescribed herein. In alternative embodiments, hard-wired circuitry maybe used in place of or in combination with software instructions.

Various forms of computer readable storage media may be involved incarrying one or more sequences of one or more computer readable programinstructions to processor 704 for execution. For example, theinstructions may initially be carried on a magnetic disk or solid statedrive of a remote computer. The remote computer can load theinstructions into its dynamic memory and send the instructions over atelephone line using a modem. A modem local to computer system 700 canreceive the data on the telephone line and use an infra-red transmitterto convert the data to an infra-red signal. An infra-red detector canreceive the data carried in the infra-red signal and appropriatecircuitry can place the data on bus 702. Bus 702 carries the data tomain memory 706, from which processor 704 retrieves and executes theinstructions. The instructions received by main memory 706 mayoptionally be stored on storage device 710 either before or afterexecution by processor 704.

Computer system 700 also includes a communication interface 718 coupledto bus 702. Communication interface 718 provides a two-way datacommunication coupling to a network link 720 that is connected to alocal network 722. For example, communication interface 718 may be anintegrated services digital network (ISDN) card, cable modem, satellitemodem, or a modem to provide a data communication connection to acorresponding type of telephone line. As another example, communicationinterface 718 may be a local area network (LAN) card to provide a datacommunication connection to a compatible LAN (or WAN component tocommunicated with a WAN). Wireless links may also be implemented. In anysuch implementation, communication interface 718 sends and receiveselectrical, electromagnetic or optical signals that carry digital datastreams representing various types of information.

Network link 720 typically provides data communication through one ormore networks to other data devices. For example, network link 720 mayprovide a connection through local network 722 to a host computer 724 orto data equipment operated by an Internet Service Provider (ISP) 726.ISP 726 in turn provides data communication services through the worldwide packet data communication network now commonly referred to as the“Internet” 728. Local network 722 and Internet 728 both use electrical,electromagnetic or optical signals that carry digital data streams. Thesignals through the various networks and the signals on network link 720and through communication interface 718, which carry the digital data toand from computer system 700, are example forms of transmission media.

Computer system 700 can send messages and receive data, includingprogram code, through the network(s), network link 720 and communicationinterface 718. In the Internet example, a server 730 might transmit arequested code for an application program through Internet 728, ISP 726,local network 722 and communication interface 718.

The received code may be executed by processor 704 as it is received,and/or stored in storage device 710, or other non-volatile storage forlater execution.

As described above, in various embodiments certain functionality may beaccessible by a user through a web-based viewer (such as a web browser),or other suitable software program). In such implementations, the userinterface may be generated by a server computing system and transmittedto a web browser of the user (e.g., running on the user's computingsystem). Alternatively, data (e.g., user interface data) necessary forgenerating the user interface may be provided by the server computingsystem to the browser, where the user interface may be generated (e.g.,the user interface data may be executed by a browser accessing a webservice and may be configured to render the user interfaces based on theuser interface data). The user may then interact with the user interfacethrough the web-browser. User interfaces of certain implementations maybe accessible through one or more dedicated software applications. Incertain embodiments, one or more of the computing devices and/or systemsof the disclosure may include mobile computing devices, and userinterfaces may be accessible through such mobile computing devices (forexample, smartphones and/or tablets).

Many variations and modifications may be made to the above-describedembodiments, the elements of which are to be understood as being amongother acceptable examples. All such modifications and variations areintended to be included herein within the scope of this disclosure. Theforegoing description details certain embodiments. It will beappreciated, however, that no matter how detailed the foregoing appearsin text, the systems and methods can be practiced in many ways. As isalso stated above, it should be noted that the use of particularterminology when describing certain features or aspects of the systemsand methods should not be taken to imply that the terminology is beingre-defined herein to be restricted to including any specificcharacteristics of the features or aspects of the systems and methodswith which that terminology is associated.

Conditional language, such as, among others, “can,” “could,” “might,” or“may,” unless specifically stated otherwise, or otherwise understoodwithin the context as used, is generally intended to convey that certainembodiments include, while other embodiments do not include, certainfeatures, elements, and/or steps. Thus, such conditional language is notgenerally intended to imply that features, elements and/or steps are inany way required for one or more embodiments or that one or moreembodiments necessarily include logic for deciding, with or without userinput or prompting, whether these features, elements and/or steps areincluded or are to be performed in any particular embodiment.

The term “substantially” when used in conjunction with the term“real-time” forms a phrase that will be readily understood by a personof ordinary skill in the art. For example, it is readily understood thatsuch language will include speeds in which no or little delay or waitingis discernible, or where such delay is sufficiently short so as not tobe disruptive, irritating, or otherwise vexing to a user.

Conjunctive language such as the phrase “at least one of X, Y, and Z,”or “at least one of X, Y, or Z,” unless specifically stated otherwise,is to be understood with the context as used in general to convey thatan item, term, etc. may be either X, Y, or Z, or a combination thereof.For example, the term “or” is used in its inclusive sense (and not inits exclusive sense) so that when used, for example, to connect a listof elements, the term “or” means one, some, or all of the elements inthe list. Thus, such conjunctive language is not generally intended toimply that certain embodiments require at least one of X, at least oneof Y, and at least one of Z to each be present.

The term “a” as used herein should be given an inclusive rather thanexclusive interpretation. For example, unless specifically noted, theterm “a” should not be understood to mean “exactly one” or “one and onlyone”; instead, the term “a” means “one or more” or “at least one,”whether used in the claims or elsewhere in the specification andregardless of uses of quantifiers such as “at least one,” “one or more,”or “a plurality” elsewhere in the claims or specification.

The term “comprising” as used herein should be given an inclusive ratherthan exclusive interpretation. For example, a general purpose computercomprising one or more processors should not be interpreted as excludingother computer components, and may possibly include such components asmemory, input/output devices, and/or network interfaces, among others.

While the above detailed description has shown, described, and pointedout novel features as applied to various embodiments, it may beunderstood that various omissions, substitutions, and changes in theform and details of the devices or processes illustrated may be madewithout departing from the spirit of the disclosure. As may berecognized, certain embodiments of the inventions described herein maybe embodied within a form that does not provide all of the features andbenefits set forth herein, as some features may be used or practicedseparately from others. The scope of certain inventions disclosed hereinis indicated by the appended claims rather than by the foregoingdescription. All changes which come within the meaning and range ofequivalency of the claims are to be embraced within their scope.

1. A computing system configured to enable distributed control ofdiscrete units of an asset based on a distributed blockchain network,the computing system comprising: a computer readable storage mediumhaving program instructions embodied therewith; and one or moreprocessors configured to execute the program instructions to cause thecomputing system to: receive an indication of an execution of a transferof temporary control between a granting entity and a receiving entity ofa unit of an asset comprising a plurality of units; receive transactiondata comprising a duration of time of control of the unit; determinethat the receiving entity has initiated the transaction; based at leaston the determination, record the transaction data in a distributedledger of a blockchain network; identify a smart contract between thegranting entity and at least the receiving entity, the smart contractcomprising logic and rules corresponding to conditions for transfer ofthe control of the unit of the asset; identify the logic and rules ofthe smart contract; receive a granting entity authentication keyassociated with the granting entity; determine that the transaction datameet the logic and rules of the smart contract by at least: comparingthe transaction data to the logic and rules of the smart contract; andbased on the comparison, matching a stored authentication key of theblockchain distributed network to the granting entity authenticationkey; based on the determination that the transaction data meet the logicand rules of the smart contract, validate the transaction data; andbased on the validation of the transaction data, send instructions fortransferring temporary control of the unit of the asset to the receivingentity.
 2. The computing system architecture of claim 1, wherein the atleast the receiving entity comprises a plurality of entities.
 3. Thecomputing system architecture of claim 1, wherein sending instructionsfor transferring temporary control of the unit of the asset to thereceiving entity comprises sending instructions for transferring anexchange asset from the receiving entity to the granting entity.
 4. Thecomputing system architecture of claim 1, wherein sending instructionsfor transferring temporary control of the unit of the asset to thereceiving entity comprises forming a new smart contract between thereceiving entity and at least the granting entity.
 5. The computingsystem architecture of claim 4, wherein the new smart contract comprisescorresponding new rules and new logic, the new logic comprisinginstructions to transfer, based on a passage of a period of time, apayment asset to the granting entity.
 6. The computing systemarchitecture of claim 5, wherein the new logic comprises instructions totransfer, based on a passage of a plurality of periods of time, acorresponding plurality of payment assets to the granting entity, thetransfer of each of the plurality of payment assets to occur afterpassage of each of the corresponding plurality of periods of time. 7.The computing system architecture of claim 5, wherein the new logiccomprises instructions to transfer, based on a change in value of theunit of the asset, a payment asset to the receiving entity.
 8. Thecomputing system architecture of claim 1, wherein the logic of the smartcontract comprises instructions to pause, if pausing criteria are met,the execution of the instructions for transferring temporary control ofthe unit of the asset to the receiving entity.
 9. The computing systemarchitecture of claim 4, wherein the new smart contract comprisescorresponding new rules and new logic, the new logic comprisinginstructions to transfer, based on a passage of the duration of time,control of the unit of the asset to the granting entity.
 10. Acomputer-implemented method for enabling distributed control of discreteunits of an asset based on a distributed blockchain network, the methodcomprising: receiving an indication of an execution of a transfer oftemporary control between a granting entity and a receiving entity of aunit of an asset comprising a plurality of units; receiving transactiondata comprising a duration of the temporary control of the unit;recording the transaction data in a distributed ledger of a blockchainnetwork; identifying logic and rules corresponding to conditions oftransfer of the temporary control of the unit of the asset; receiving agranting entity authentication key; determining that the transactiondata meet the logic and the rules of the conditions of transfer by atleast: comparing the transaction data to the logic and rules of theconditions of transfer; and based on the comparison, matching a storedauthentication key of the blockchain distributed network to the grantingentity authentication key; based on the determination that thetransaction data meet the logic and rules of the conditions of transfer,validating the transaction data; and based on the validation of thetransaction data, sending instructions for transferring temporarycontrol of the unit of the asset to the receiving entity.
 11. The methodof claim 10, wherein sending instructions for transferring temporarycontrol of the unit of the asset to the receiving entity comprisessending instructions for transferring an exchange asset from thereceiving entity to the granting entity.
 12. The method of claim 1,wherein sending instructions for transferring temporary control of theunit of the asset to the receiving entity comprises forming newconditions for transfer of the temporary control of the unit of theasset between the receiving entity and at least the granting entity. 13.The method of claim 12, wherein the new conditions comprisecorresponding new rules and new logic, the new logic comprisinginstructions to transfer, based on a passage of a period of time, apayment asset to the granting entity.
 14. The method of claim 13,wherein the new logic comprises instructions to transfer, based onsequential passage of each of a plurality of periods of time, acorresponding plurality of payment assets to the granting entity, thetransfer of each of the plurality of payment assets to occur afterpassage of each of the corresponding plurality of periods of time. 15.The method of claim 10, wherein the logic of the conditions of transfercomprises instructions to pause, if pausing criteria are met, theexecution of the instructions for transferring temporary control of theunit of the asset to the receiving entity.
 16. The method of claim 15,wherein the new conditions comprise corresponding new rules and newlogic, the new logic comprising instructions to transfer, based on apassage of the duration of time, control of the unit of the asset to thegranting entity.
 17. The method of claim 10, wherein the logic of theconditions for transfer of the control of the unit of the asset are atleast in part disposed on the blockchain.
 18. A computer-implementedmethod for initiating distributed control of discrete units of an asset,the method comprising: transmitting a request for an execution of atransfer of temporary control between a granting entity and a receivingentity of a unit of an asset comprising a plurality of units;transmitting a request for transaction data to be recorded in adistributed ledger of a blockchain network, the transaction datacomprising a duration of the temporary control of the unit; supplyinglogic and rules corresponding to conditions of transfer of the temporarycontrol of the unit of the asset; transmitting a receiving entityauthentication key; receiving an indication that the logic and ruleshave been validated based on the transaction data; transmitting apayment asset; and based on the validation of the transaction data,receiving an indication of a transfer of temporary control of the unitof the asset.